home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 2 / Atari Mega Archive CD - Volume 2.iso / 8bit / cislib_a / loadit.fix < prev    next >
Text File  |  1995-04-22  |  6KB  |  162 lines

  1. 0 REM ******************************* 
  2. 1 REM * FROM 'COMPUTE!'S SECOND BOOK* 
  3. 2 REM * OF ATARI.'  THIS PGM WILL   * 
  4. 3 REM * PUT A MENU ON THE SCREEN &  * 
  5. 4 REM * LOAD BINARY DOS FILES FROM  * 
  6. 5 REM * BASIC.  COMBINED WITH THE   * 
  7. 6 REM * 'AUTORN.ATR' IT MAKES A NICE* 
  8. 7 REM * SYSTEM FOR YOUNG CHILDREN TO* 
  9. 8 REM * PICK A PROGRAM AND RUN IT.  * 
  10. 9 REM ******************************* 
  11. 10 REM LOADIT DEMO MENU 
  12. 20 REM BY ROBERT E. ALLEGER 
  13. 30 DIM LINE$(15),DIR$(12*64),DRIVE$(3),ML$(1) 
  14. 40 REM * INITIALIZATION * 
  15. 50 GRAPHICS 0:POKE 752,1 
  16. 60 DRIVE$="D1:" 
  17. 70 ? ,"MENU FOR DRIVE ";DRIVE$:?  
  18. 80 GOSUB 5000:REM STORE LOADIT.OBJ 
  19. 90 LINE$=DRIVE$:LINE$(4)="*.*" 
  20. 100 DIR$(1,1)=" ":DIR$(12*64)=" " 
  21. 110 DIR$(2)=DIR$ 
  22. 120 CLOSE #1:OPEN #1,6,0,LINE$ 
  23. 130 TRAP 380:ENTRY=1:LINEFLAG=1 
  24. 140 REM * READ THE DIRECTORY * 
  25. 150 FOR FILENUMBER=1 TO 64 
  26. 160 INPUT #1,LINE$ 
  27. 170 IF LINE$(2,2)<>" " THEN 380 
  28. 180 PD=ENTRY 
  29. 190 REM * SCAN FILE NAME * 
  30. 200 FOR PS=3 TO 10 
  31. 210 IF LINE$(PS,PS)=" " THEN 240 
  32. 220 DIR$(PD,PD)=LINE$(PS,PS) 
  33. 230 PD=PD+1:NEXT PS 
  34. 240 REM * CHECK FOR EXTENSION * 
  35. 250 IF LINE$(11,11)=" " THEN 320:REM NO EXTENSION 
  36. 260 DIR$(PD,PD)=".":REM APPEND DOT 
  37. 270 PD=PD+1 
  38. 280 REM * SCAN FILE EXTENSION * 
  39. 290 FOR PS=11 TO 13 
  40. 300 DIR$(PD,PD)=LINE$(PS,PS) 
  41. 310 PD=PD+1:NEXT PS 
  42. 320 REM * DISPLAY FILE NAME.EXT * 
  43. 330 IF LINEFLAG=3 THEN PRINT :LINEFLAG=1 
  44. 340 IF FILENUMBER<10 THEN PRINT " "; 
  45. 350 ? FILENUMBER;" ";DIR$(ENTRY,ENTRY+11);"  "; 
  46. 360 LINEFLAG=LINEFLAG+1 
  47. 370 ENTRY=ENTRY+12:NEXT FILENUMBER 
  48. 380 REM * CHOOSE ONE * 
  49. 390 PRINT :? "ENTER NUMBER OF FILE TO LOAD: "; 
  50. 400 TRAP 390:INPUT N 
  51. 410 IF N<1 OR N>FILENUMBER-1 THEN 390 
  52. 420 LINE$=DRIVE$ 
  53. 430 LINE$(4)=DIR$(N*12-11,N*12) 
  54. 435 ? :? "IS THIS A MACHINE LANGUAGE PROGRAM?    (Y/N)";:INPUT ML$ 
  55. 437 IF ML$="Y" THEN 540 
  56. 440 GRAPHICS 0:POSITION 2,10 
  57. 450 ? "      LOADING  ";LINE$ 
  58. 460 REM * SEE IF MACHINE LANGUAGE * 
  59. 470 FOR PS=4 TO 12 
  60. 480 IF LINE$(PS,PS+3)=".OBJ" THEN 540 
  61. 490 NEXT PS 
  62. 500 REM * LOAD BASIC PROGRAM 
  63. 510 TRAP 530 
  64. 520 RUN LINE$ 
  65. 530 ERROR=PEEK(195):GOTO 560 
  66. 540 REM * LOAD M.L. PROGRAM * 
  67. 545 GRAPHICS 0:SETCOLOR 2,0,0:POSITION 2,10:? "LOADING ";LINE$ 
  68. 550 ERROR=USR(1536,ADR(LINE$)) 
  69. 560 REM * SHOULDN'T BE HERE !! * 
  70. 570 ? "ERROR #";ERROR;" ENCOUNTERED DURING LOAD" 
  71. 580 END  
  72. 5000 FOR A=1536 TO 1717:READ B:POKE A,B:NEXT A 
  73. 5001 DATA 162,16,32,173,6,134,207,104,104,157,69,3,104,157,68,3,169,4,157,74,3,169,3,157,66 
  74. 5002 DATA 3,32,86,228,16,3,76,166,6,169,203,157,68,3,169,0,157,69,3,169,2,157,72,3,169 
  75. 5003 DATA 0,157,73,3,169,7,157,66,3,32,86,228,16,6,192,136,240,92,208,96,169,255,197,203,208 
  76. 5004 DATA 4,197,204,240,210,169,205,157,68,3,169,0,157,69,3,32,86,228,16,2,48,69,165,207,240 
  77. 5005 DATA 14,165,203,141,224,2,165,204,141,225,2,169,0,133,207,165,203,157,68,3,165,204,157,69,3 
  78. 5006 DATA 165,205,56,229,203,157,72,3,165,206,229,204,157,73,3,254,72,3,208,3,254,73,3,32,86 
  79. 5007 DATA 228,16,137,192,3,240,133,76,166,6,32,173,6,108,224,2,152,133,212,169,0,133,213,169,12 
  80. 5008 DATA 157,66,3,32,86,228,96 
  81. 5009 RETURN  
  82. 0 REM ******************************* 
  83. 1 REM * FROM 'COMPUTE!'S SECOND BOOK* 
  84. 2 REM * OF ATARI.'  THIS PGM WILL   * 
  85. 3 REM * PUT A MENU ON THE SCREEN &  * 
  86. 4 REM * LOAD BINARY DOS FILES FROM  * 
  87. 5 REM * BASIC.  COMBINED WITH THE   * 
  88. 6 REM * 'AUTORN.ATR' IT MAKES A NICE* 
  89. 7 REM * SYSTEM FOR YOUNG CHILDREN TO* 
  90. 8 REM * PICK A PROGRAM AND RUN IT.  * 
  91. 9 REM ******************************* 
  92. 10 REM LOADIT DEMO MENU 
  93. 20 REM BY ROBERT E. ALLEGER 
  94. 30 DIM LINE$(15),DIR$(12*64),DRIVE$(3),ML$(1) 
  95. 40 REM * INITIALIZATION * 
  96. 50 GRAPHICS 0:POKE 752,1 
  97. 60 DRIVE$="D1:" 
  98. 70 ? ,"MENU FOR DRIVE ";DRIVE$:?  
  99. 80 GOSUB 5000:REM STORE LOADIT.OBJ 
  100. 90 LINE$=DRIVE$:LINE$(4)="*.*" 
  101. 100 DIR$(1,1)=" ":DIR$(12*64)=" " 
  102. 110 DIR$(2)=DIR$ 
  103. 120 CLOSE #1:OPEN #1,6,0,LINE$ 
  104. 130 TRAP 380:ENTRY=1:LINEFLAG=1 
  105. 140 REM * READ THE DIRECTORY * 
  106. 150 FOR FILENUMBER=1 TO 64 
  107. 160 INPUT #1,LINE$ 
  108. 170 IF LINE$(2,2)<>" " THEN 380 
  109. 180 PD=ENTRY 
  110. 190 REM * SCAN FILE NAME * 
  111. 200 FOR PS=3 TO 10 
  112. 210 IF LINE$(PS,PS)=" " THEN 240 
  113. 220 DIR$(PD,PD)=LINE$(PS,PS) 
  114. 230 PD=PD+1:NEXT PS 
  115. 240 REM * CHECK FOR EXTENSION * 
  116. 250 IF LINE$(11,11)=" " THEN 320:REM NO EXTENSION 
  117. 260 DIR$(PD,PD)=".":REM APPEND DOT 
  118. 270 PD=PD+1 
  119. 280 REM * SCAN FILE EXTENSION * 
  120. 290 FOR PS=11 TO 13 
  121. 300 DIR$(PD,PD)=LINE$(PS,PS) 
  122. 310 PD=PD+1:NEXT PS 
  123. 320 REM * DISPLAY FILE NAME.EXT * 
  124. 330 IF LINEFLAG=3 THEN PRINT :LINEFLAG=1 
  125. 340 IF FILENUMBER<10 THEN PRINT " "; 
  126. 350 ? FILENUMBER;" ";DIR$(ENTRY,ENTRY+11);"  "; 
  127. 360 LINEFLAG=LINEFLAG+1 
  128. 370 ENTRY=ENTRY+12:NEXT FILENUMBER 
  129. 380 REM * CHOOSE ONE * 
  130. 390 PRINT :? "ENTER NUMBER OF FILE TO LOAD: "; 
  131. 400 TRAP 390:INPUT N 
  132. 410 IF N<1 OR N>FILENUMBER-1 THEN 390 
  133. 420 LINE$=DRIVE$ 
  134. 430 LINE$(4)=DIR$(N*12-11,N*12) 
  135. 435 ? :? "IS THIS A MACHINE LANGUAGE PROGRAM?    (Y/N)";:INPUT ML$ 
  136. 437 IF ML$="Y" THEN 540 
  137. 440 GRAPHICS 0:POSITION 2,10 
  138. 450 ? "      LOADING  ";LINE$ 
  139. 460 REM * SEE IF MACHINE LANGUAGE * 
  140. 470 FOR PS=4 TO 12 
  141. 480 IF LINE$(PS,PS+3)=".OBJ" THEN 540 
  142. 490 NEXT PS 
  143. 500 REM * LOAD BASIC PROGRAM 
  144. 510 TRAP 530 
  145. 520 RUN LINE$ 
  146. 530 ERROR=PEEK(195):GOTO 560 
  147. 540 REM * LOAD M.L. PROGRAM * 
  148. 545 GRAPHICS 0:SETCOLOR 2,0,0:POSITION 2,10:? "LOADING ";LINE$ 
  149. 550 ERROR=USR(1536,ADR(LINE$)) 
  150. 560 REM * SHOULDN'T BE HERE !! * 
  151. 570 ? "ERROR #";ERROR;" ENCOUNTERED DURING LOAD" 
  152. 580 END  
  153. 5000 FOR A=1536 TO 1717:READ B:POKE A,B:NEXT A 
  154. 5001 DATA 162,16,32,173,6,134,207,104,104,157,69,3,104,157,68,3,169,4,157,74,3,169,3,157,66 
  155. 5002 DATA 3,32,86,228,16,3,76,166,6,169,203,157,68,3,169,0,157,69,3,169,2,157,72,3,169 
  156. 5003 DATA 0,157,73,3,169,7,157,66,3,32,86,228,16,6,192,136,240,92,208,96,169,255,197,203,208 
  157. 5004 DATA 4,197,204,240,210,169,205,157,68,3,169,0,157,/EX 
  158. DEL 
  159.  
  160.  
  161. DEL LOADIT.FIX 
  162.